<script>
export default {
	onLaunch() {
		console.log('App Launch');
		// 缓存挂枪gif图片
		uni.getSavedFileList({
			success: res => {
				console.log(res);
				if (!res.fileList.length) {
					uni.getImageInfo({
						src:
							'http://img.etubang.com/group1/M00/00/48/rBCky1-mWsWACZafAA6-ZoXP3HM323.gif',
						success: res => {
							uni.saveFile({
								tempFilePath: res.path,
								success: function(res) {
									console.log(res);
								},
								fail: err => {
									console.log(err);
								}
							});
						}
					});
				}
			}
		});
	},
	onShow() {
		// websocket 连接检查
		this.$socket.dispatch('check');
		// let token = this.$cache.get(this.$tmp.TOKEN_INFO);
		let token = uni.getStorageSync(this.$tmp.TOKEN_INFO);
		console.log('token过期没', token, token != null && !token);
		if (token) {
			uni.login({
				provider: 'weixin',
				success: rs => {
					this.$http({
						url: this.$api.userUrl + 'wxloginbytype',
						data: {
							action: 2,
							code: rs.code
						},
						loading: 0,
						hideLoading: 0
					}).then(res => {
						this.$store.commit('login', res); //保存token，将登录状态调整为“已登录”
						setTimeout(() => {
							uni.$emit('loginSuc');
						}, 500);
					});
				}
			});
		} else {
			this.$store.commit('showLogin', true);
		}

		// 版本更新
		const updateManager = uni.getUpdateManager();
		updateManager.onCheckForUpdate(function(res) {
			// 请求完新版本信息的回调
			if (res.hasUpdate) {
				updateManager.onUpdateReady(function(res2) {
					uni.showModal({
						title: '更新提示',
						content: '发现新版本，是否重启应用?',
						cancelColor: '#999999',
						confirmColor: '#00aa00',
						success(res2) {
							if (res2.confirm) {
								// 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
								updateManager.applyUpdate();
							}
						}
					});
				});
			}
		});

		updateManager.onUpdateFailed(function(res) {
			// 新的版本下载失败
			uni.showModal({
				title: '提示',
				content: '检查到有新版本，但下载失败，请检查网络设置',
				success(res) {
					if (res.confirm) {
						// 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
						updateManager.applyUpdate();
					}
				}
			});
		});
	},
	onHide() {
		clearInterval(this.globalData.timer);
	}
};
</script>

<style lang="scss">
@import './common/a.scss';
</style>
